return gtk_widget_event_internal (widget, event);
}
-void
-_gtk_widget_set_captured_event_handler (GtkWidget *widget,
- GtkCapturedEventHandler callback)
-{
- g_object_set_data (G_OBJECT (widget), I_("captured-event-handler"), callback);
-}
-
gboolean
gtk_widget_run_controllers (GtkWidget *widget,
const GdkEvent *event,
const GdkEvent *event)
{
gboolean return_val = FALSE;
- GtkCapturedEventHandler handler;
GdkEvent *event_copy;
g_return_val_if_fail (GTK_IS_WIDGET (widget), TRUE);
translate_event_coordinates (event_copy, widget);
return_val = gtk_widget_run_controllers (widget, event_copy, GTK_PHASE_CAPTURE);
-
- handler = g_object_get_data (G_OBJECT (widget), I_("captured-event-handler"));
- if (!handler)
- goto out;
-
- g_object_ref (widget);
-
- return_val |= handler (widget, event_copy);
return_val |= !WIDGET_REALIZED_FOR_EVENT (widget, event_copy);
- g_object_unref (widget);
-
-out:
g_object_unref (event_copy);
return return_val;
gpointer user_data);
GtkStyleContext * _gtk_widget_peek_style_context (GtkWidget *widget);
-typedef gboolean (*GtkCapturedEventHandler) (GtkWidget *widget, GdkEvent *event);
-
-void _gtk_widget_set_captured_event_handler (GtkWidget *widget,
- GtkCapturedEventHandler handler);
-
gboolean _gtk_widget_captured_event (GtkWidget *widget,
const GdkEvent *event);